package com.honestpeak.datafusion.mapper;

import com.honestpeak.datafusion.model.*;
import org.apache.ibatis.annotations.Param;

import java.util.List;

/**
 * @Auther: apple
 * @Date: 2018/8/17 13:42
 * @Description:
 */
public interface HpamsMapper {

    List<HpamsDayData> getXyStuNumByDay(String day);

    List<DepartTermActivityCount> getYXStuNumByYear(@Param("year") String year, @Param("dwh") String dwh);

    /**
     * 获取院系信息
     * @return
     */
    List<Dwh> getDwInfo();

    /**
     * 获取学年学期信息
     * @return
     */
    List<YearTerm> getYearTermInfo();

    HpamsRunMonthActive getMonthRunActiveCountByYearDwh(@Param("year") String year, @Param("dwh") Integer dwh, @Param("month") Integer month);

    /**
     * 获取当日活动人数
     * @param day
     * @return
     */
    PlatformActiveCount getTodayActiveCount(String day);

    /**
     * 获取俱乐部今日活动人数
     * @param day
     * @param code
     * @return
     */
    PlatformActiveCount getClubMemberCount(@Param("day") String day, @Param("code") Integer code);

    /**
     * 获取当日俱乐部活动实际人数
     * @return
     */
    List<PlatformActiveCount> getActualNumberOClubsByDay();

    /**
     * 获取准会员签到人数
     * @param day 当天
     * @param id 俱乐部Id
     * @return
     */
    PlatformActiveCount getAssociateMember(@Param("day") String day, @Param("id") Integer id);

    /**
     * 根据院系名称查询人数
     * @param name
     * @param year
     * @return
     */
    BaseModel getDepartActiveCount(@Param("name") String name ,@Param("year") String year);

    /**
     * 查询所有院系
     * @return
     */
    List<String> getAllDepartmentNameList();

    BaseModel getHpamsActiveCountByYearWeekDwh(@Param("dwh") String dwh, @Param("start") String weekStart, @Param("end") String weekEnd);
}
